The TBitmap32 class provides quite a number of methods that draw single pixel width lines. The names of these methods start with either Line, LineTo, HorzLine or VertLine and can include one or more of the following postfixes:
Postfix | Brief | Description | Sample (magnified × 4) | Examples |
---|---|---|---|---|
none
|
|
Methods without modifiers offer maximum perfomance. Lines are rendered without anti-aliasing and without color blending. No line clipping is performed so coordinates are expected to be within bitmap boundaries. (If they aren't, exceptions will be raised.) |
Line
HorzLine |
|
S
|
Safe
|
Line clipping is performed when coordinates extend beyond bitmap boundaries. This modifier can be combined with any one of the anti-aliasing or transparent modifiers below (T, A, X or F) and also with the stippling (P) modifier. |
[same as above]
|
LineS
LineToAS |
T
|
Transparent
|
Semi-transparent lines are merged onto the background image (though still without anti-aliasing). |
LineT
LineTS |
|
A
|
Anti-aliased
|
Uses a modified version of Bresenham’s algorithm (also known as Wu’s antialiasing). |
LineA
|
|
X
|
Fixed
|
Coordinates are in TFixed format. These methods also employ a more sophisticated antialiasing algorithm than that used in the 'A' methods above. |
LineX
LineXS |
|
F
|
Float
|
Coordinates are in TFloat format. These methods employ the antialiasing algorithm that's used in the 'X' methods. |
[same as above]
|
LineF
LineFS |
P
|
Stippling
|
Line Stippling effects include color gradients and dashed lines (See Line Patterns). This modifier must be combined with one of the anti-aliasing or transparent modifiers above. |
LineFSP
|
|
All the methods listed above draw line segments that are a single pixel wide. To draw thicker lines, see the Polyline and PolyPolyline functions in the GR32_Polygons unit. These functions also produce better anti-alias blending over fully transparent backgrounds (when compared with X & F modified methods above). |
Polyline
|
Line Patterns, Changes, Contacts, Donate, Features, License, TBitmap32, GR32_Polygons, Polyline, PolyPolyline
Copyright ©2000-2024 Alex Denisov and the Graphics32 Team - Graphics32 2.0 - Help file built on 18 Feb 2024